﻿#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<Windows.h>
#include<string.h>

void showHeart() {
    float x, y, a;
    char* love_str = "I love you ";
    int index = 0;
    int len = strlen(love_str);

    for (y = 1.5; y > -1.5; y -= 0.08) {
        for (x = -1.5; x < 1.5; x += 0.03) {
            a = x * x + y * y - 1;
            if (a * a * a - x * x * y * y * y <= 0.0) {
                putchar(love_str[index % len]);
                index++;
            }
            else {
                putchar(' ');
            }
        }
        system("color 0c");
        putchar('\n');
    }
    printf("薛佳奇\n");
    printf("我好想你\n");
}

int main() {
    char keyword[20];
    char correct_date[] = "2013.10.10";
    int attempts = 3;  // 尝试次数

    printf("=====================================\n");
    printf("       浪漫回忆程序\n");
    printf("=====================================\n\n");

    while (attempts > 0) {
        printf("请输入我们确立关系的日期 (格式: 2013.10.10): ");
        scanf("%s", keyword);

        if (strcmp(keyword, correct_date) == 0) {
            printf("\n✓ 日期正确！美好的回忆涌上心头...\n");
            printf("按下回车键查看惊喜 (⊙o⊙) ");
            getchar();  // 吸收之前的回车
            getchar();  // 等待用户按下回车

            system("cls");  // 清屏
            printf("献给我的最爱：\n\n");
            showHeart();
            break;
        }
        else {
            attempts--;
            if (attempts > 0) {
                printf("✗ 日期不正确，您还有 %d 次尝试机会\n\n", attempts);
            }
            else {
                printf("✗ 尝试次数已用完，程序结束。\n");
            }
        }
    }

    printf("\n感谢使用！\n");
    return 0;
}